//int GetNumberOfK(int* data, int dataLen, int k) {
//    // write code here
//    int num = 0;
//    int i = 0;
//    for (i = 0; i < dataLen; i++)
//    {
//        if (data[i] == k)
//            num++;
//    }
//    return num;
//}
#include<stdio.h>

int convertInteger(int A, int B) {
    int num = 0;
    A= A ^ B;
    int i = 1;
    while (i)
    {
        if ((A & i) != 0)
            num++;
        i=i << 1;
    }
    return num;
}

int main()
{
    int a = 0;
    int b = 0;
    scanf_s("%d\n%d", &a, &b);
    int n=convertInteger(a, b);
    printf("%d", n);
    return 0;
}

//
//int main()
//{
//	int a = 248, b = 4; int const* c = 21;
//	const int* d = &a; int* const e = &b; int const* const f = &a;
//
//
//	/**c = 32;  *d = 43; e = &a; f = 0x321f*/
//
//
//}

#include <stdio.h>
//int i;
//void prt()
//{
//	for (i = 5; i < 8; i++)
//	printf("%c", '*');
//	printf("\t");
//}
//int main() 
//{
//	for (i = 5; i <= 8; i++)
//		prt();
//	return 0;
//}
//int main() {
//	int a = 3;
//	printf("%d\n", (a += a -= a * a)); return 0;
//}
int main()
{
	printf("%d", 0.0 / 0.0);
}
int minNumberInRotateArray(int* rotateArray, int rotateArrayLen) {
    int min = *rotateArray;
    int i = 0;
    for (i = 0; i < rotateArrayLen; i++) {
        if (min > *(rotateArray + i)) {
            min = *(rotateArray + i);
        }
    }
    return min;
}
